package com.forum.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.forum.pojo.UserMessage;
import com.forum.pojo.vo.ChatVo;
import com.forum.pojo.vo.FriendMessageVo;
import com.forum.pojo.vo.LikeArticleVo;
import com.forum.pojo.vo.LikeCommentVo;
import com.forum.result.Result;
import io.swagger.models.auth.In;

import java.util.List;

/**
*
*/
public interface UserMessageService extends IService<UserMessage> {

    List<LikeArticleVo> getLikeArticle(Long userId);

    List<LikeCommentVo> getLikeComment(Long userId);

    List<LikeArticleVo> getArticleLikeMessage(Long userId);

    List<LikeCommentVo> getCommentLikeMessage(Long userId);

    List<FriendMessageVo> getFriendMessage(Long userId);

    List<LikeCommentVo> getCommentMessage(Long userId);

    /**
     * 处理同意拒绝
     * @param userId
     * @param friendId
     * @param addType
     * @return
     */
    boolean HandleAddFriend(Long userId, Long friendId, Integer addType);

    /**
     * 申请添加好友
     * @param userId
     * @param friendId
     * @return
     */
    boolean AddFriendRequest(Long userId, Long friendId);

    List<FriendMessageVo> getMyFriend(Long userId);

    boolean deleteFriend(Long userId, Long friendId);

    List<ChatVo> getChat(Long userId, Long friendId);

    boolean sendMessage(Long userId, Long friendId, String content);

    Result getChatList(Long userId);

    Integer getMessageCount(Long userId, Integer type);

    boolean judgeFriend(Long userId, Long friendId);
}
